home *** CD-ROM | disk | FTP | other *** search
/ SPACE 1 / SPACE - Library 1 - Volume 1.iso / program / 84 / example.lst < prev   
File List  |  1987-08-16  |  11KB  |  348 lines

  1. Procedure Example_box (Preselect$,Postselect)
  2.   Hidem
  3.   Local Screen$,Temp$,Xm,Ym,Button$,Radio1_old$,Radio2_old$,Radio3_old$,Radio4_old$,Radio5_old$,Radio1_new$,Radio2_new$,Radio3_new$,Radio4_new$,Radio5_new$,Stat_exit
  4.   Sget Screen$
  5.   Local Toggle_1_stat$, Toggle_1_stat
  6.   Local Toggle_2_stat$, Toggle_2_stat
  7.   Local Exit_1_stat$, Exit_1_stat
  8.   Local Exit_2_stat$, Exit_2_stat
  9.   @Drawshapes_Example_box
  10.   @Radio_title(0)
  11.   @Toggle_title(0)
  12.   @exit_title(0)
  13.   If Instr(Preselect$,"(Radio_a_1)")>0
  14.     @Radio_a_1(-1)
  15.     Let Radio1_old$="Radio_a_1"
  16.   Else
  17.     @Radio_a_1(0)
  18.   Endif
  19.   If Instr(Preselect$,"(Radio_a_2)")>0
  20.     @Radio_a_2(-1)
  21.     Let Radio1_old$="Radio_a_2"
  22.   Else
  23.     @Radio_a_2(0)
  24.   Endif
  25.   If Instr(Preselect$,"(Radio_a_3)")>0
  26.     @Radio_a_3(-1)
  27.     Let Radio1_old$="Radio_a_3"
  28.   Else
  29.     @Radio_a_3(0)
  30.   Endif
  31.   If Instr(Preselect$,"(Radio_a_4)")>0
  32.     @Radio_a_4(-1)
  33.     Let Radio1_old$="Radio_a_4"
  34.   Else
  35.     @Radio_a_4(0)
  36.   Endif
  37.   If Instr(Preselect$,"(Radio_b_1)")>0
  38.     @Radio_b_1(-1)
  39.     Let Radio4_old$="Radio_b_1"
  40.   Else
  41.     @Radio_b_1(0)
  42.   Endif
  43.   If Instr(Preselect$,"(Radio_b_2)")>0
  44.     @Radio_b_2(-1)
  45.     Let Radio4_old$="Radio_b_2"
  46.   Else
  47.     @Radio_b_2(0)
  48.   Endif
  49.   If Instr(Preselect$,"(Radio_b_3)")>0
  50.     @Radio_b_3(-1)
  51.     Let Radio4_old$="Radio_b_3"
  52.   Else
  53.     @Radio_b_3(0)
  54.   Endif
  55.   If Instr(Preselect$,"(Toggle_1)")>0
  56.     @Toggle_1(-1)
  57.     Let Toggle_1_stat=true
  58.     Let Toggle_1_stat$="Toggle_1"
  59.   Else
  60.     @Toggle_1(0)
  61.   Endif
  62.   If Instr(Preselect$,"(Toggle_2)")>0
  63.     @Toggle_2(-1)
  64.     Let Toggle_2_stat=true
  65.     Let Toggle_2_stat$="Toggle_2"
  66.   Else
  67.     @Toggle_2(0)
  68.   Endif
  69.     @Exit_1(0)
  70.     @Exit_2(0)
  71.   @Cancel(0)
  72.   @Okay(0)
  73.   Showm
  74.   Do
  75.     If Inkey$=Chr$(13)
  76.       Default=True
  77.     Else
  78.       Default=False
  79.     Endif
  80.     If Mousek=1
  81.       Mouse Xm,Ym,Void
  82.       @Find_button_Example_box (Xm,Ym,*Button$)
  83.      If Instr("(Radio_a_1)(Radio_a_2)(Radio_a_3)(Radio_a_4)","("+Button$+")")>0
  84.         @Radio1_Example_box (Button$,Radio1_old$,*Radio1_new$)
  85.         Radio1_old$=Radio1_new$
  86.       Endif
  87.      If Instr("(Radio_b_1)(Radio_b_2)(Radio_b_3)","("+Button$+")")>0
  88.         @Radio4_Example_box (Button$,Radio4_old$,*Radio4_new$)
  89.         Radio4_old$=Radio4_new$
  90.       Endif
  91.       If Button$="Toggle_1"
  92.         If Toggle_1_stat
  93.           @Toggle_1(0)
  94.           Let Toggle_1_stat=False
  95.           Let Toggle_1_stat$=""
  96.         Else
  97.           @Toggle_1(-1)
  98.           Let Toggle_1_stat=True
  99.           Let Toggle_1_stat$="Toggle_1"
  100.         Endif
  101.       Endif
  102.       If Button$="Toggle_2"
  103.         If Toggle_2_stat
  104.           @Toggle_2(0)
  105.           Let Toggle_2_stat=False
  106.           Let Toggle_2_stat$=""
  107.         Else
  108.           @Toggle_2(-1)
  109.           Let Toggle_2_stat=True
  110.           Let Toggle_2_stat$="Toggle_2"
  111.         Endif
  112.       Endif
  113.       If Button$="Exit_1"
  114.         If Exit_1_stat
  115.           @Exit_1(0)
  116.           Let Exit_1_stat=False
  117.           Let Exit_1_stat$=""
  118.           Let Stat_exit=False
  119.         Else
  120.           @Exit_1(-1)
  121.           Let Exit_1_stat=True
  122.           Let Exit_1_stat$="Exit_1"
  123.            Let Stat_exit=True
  124.         Endif
  125.       Endif
  126.       If Button$="Exit_2"
  127.         If Exit_2_stat
  128.           @Exit_2(0)
  129.           Let Exit_2_stat=False
  130.           Let Exit_2_stat$=""
  131.           Let Stat_exit=False
  132.         Else
  133.           @Exit_2(-1)
  134.           Let Exit_2_stat=True
  135.           Let Exit_2_stat$="Exit_2"
  136.            Let Stat_exit=True
  137.         Endif
  138.       Endif
  139.     Endif
  140.     Exit if (Button$="Okay") Or (Button$="Cancel") Or Default
  141.     Exit If (Button$="Exit_1")
  142.     Exit If (Button$="Exit_2")
  143.   Pause 4
  144.   Loop
  145.   If Stat_exit
  146. Temp$=Temp$+"("+Radio1_old$+")"
  147. Temp$=Temp$+"("+Radio4_old$+")"
  148. Temp$=Temp$+"("+Toggle_1_stat$+")"
  149. Temp$=Temp$+"("+Toggle_2_stat$+")"
  150. Temp$=Temp$+"("+Exit_1_stat$+")"
  151. Temp$=Temp$+"("+Exit_2_stat$+")"
  152.   *Postselect=Temp$
  153.   Endif
  154.   Do
  155.     @Find_button_Example_box (Xm,Ym,*Button$)
  156.     If Button$="Okay" Or Default
  157.       @Okay(-1)
  158.       Stat_exit=True
  159. Temp$=Temp$+"("+Radio1_old$+")"
  160. Temp$=Temp$+"("+Radio4_old$+")"
  161. Temp$=Temp$+"("+Toggle_1_stat$+")"
  162. Temp$=Temp$+"("+Toggle_2_stat$+")"
  163. Temp$=Temp$+"("+Exit_1_stat$+")"
  164. Temp$=Temp$+"("+Exit_2_stat$+")"
  165.   *Postselect=Temp$
  166.   Endif
  167.     If Button$="Cancel"
  168.       @Cancel(-1)
  169.       Stat_exit=True
  170.       *Postselect=Preselect$
  171.     Endif
  172.   Exit if Stat_exit
  173.   Loop
  174.   Pause 7
  175.   Sput Screen$
  176. Return
  177. Procedure Radio1_Example_box (Rbutton$,Old_stat$,New_stat)
  178.   If Old_stat$="Radio_a_1"
  179.     @Radio_a_1(0)
  180.   Endif
  181.   If Old_stat$="Radio_a_2"
  182.     @Radio_a_2(0)
  183.   Endif
  184.   If Old_stat$="Radio_a_3"
  185.     @Radio_a_3(0)
  186.   Endif
  187.   If Old_stat$="Radio_a_4"
  188.     @Radio_a_4(0)
  189.   Endif
  190.   If Rbutton$="Radio_a_1"
  191.     @Radio_a_1(-1)
  192.     *New_stat="Radio_a_1"
  193.   Endif
  194.   If Rbutton$="Radio_a_2"
  195.     @Radio_a_2(-1)
  196.     *New_stat="Radio_a_2"
  197.   Endif
  198.   If Rbutton$="Radio_a_3"
  199.     @Radio_a_3(-1)
  200.     *New_stat="Radio_a_3"
  201.   Endif
  202.   If Rbutton$="Radio_a_4"
  203.     @Radio_a_4(-1)
  204.     *New_stat="Radio_a_4"
  205.   Endif
  206. Return
  207. Procedure Radio4_Example_box (Rbutton$,Old_stat$,New_stat)
  208.   If Old_stat$="Radio_b_1"
  209.     @Radio_b_1(0)
  210.   Endif
  211.   If Old_stat$="Radio_b_2"
  212.     @Radio_b_2(0)
  213.   Endif
  214.   If Old_stat$="Radio_b_3"
  215.     @Radio_b_3(0)
  216.   Endif
  217.   If Rbutton$="Radio_b_1"
  218.     @Radio_b_1(-1)
  219.     *New_stat="Radio_b_1"
  220.   Endif
  221.   If Rbutton$="Radio_b_2"
  222.     @Radio_b_2(-1)
  223.     *New_stat="Radio_b_2"
  224.   Endif
  225.   If Rbutton$="Radio_b_3"
  226.     @Radio_b_3(-1)
  227.     *New_stat="Radio_b_3"
  228.   Endif
  229. Return
  230. Procedure Drawshapes_Example_box
  231.   Deffill 1,0,0
  232.   Pbox 227,15/(2/xbios(4)),317,105/(2/Xbios(4))
  233.   Deffill 1,0,0
  234.   Pbox 13,11/(2/xbios(4)),187,144/(2/Xbios(4))
  235.   Deffill 1,0,0
  236.   Pbox 349,13/(2/xbios(4)),610,173/(2/Xbios(4))
  237.   Deffill 1,2,4
  238.   Pbox 353,17/(2/xbios(4)),605,168/(2/Xbios(4))
  239.   Deffill 1,2,4
  240.   Pbox 16,15/(2/xbios(4)),183,140/(2/Xbios(4))
  241.   Deffill 1,2,2
  242.   Pbox 231,18/(2/xbios(4)),313,102/(2/Xbios(4))
  243. Return
  244. Procedure Radio_a_1(Selected)
  245.   @Draw_text_in_box("Radio A 1",372,71/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  246. Return
  247. Procedure Radio_a_2(Selected)
  248.   @Draw_text_in_box("Radio A 2",372,98/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  249. Return
  250. Procedure Radio_a_3(Selected)
  251.   @Draw_text_in_box("Radio A 3",372,125/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  252. Return
  253. Procedure Radio_a_4(Selected)
  254.   @Draw_text_in_box("Radio A 4",372,152/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  255. Return
  256. Procedure Radio_b_1(Selected)
  257.   @Draw_text_in_box("Radio B 1",515,71/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  258. Return
  259. Procedure Radio_b_2(Selected)
  260.   @Draw_text_in_box("Radio B 2",515,98/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  261. Return
  262. Procedure Radio_b_3(Selected)
  263.   @Draw_text_in_box("Radio B 3",515,125/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  264. Return
  265. Procedure Radio_title(Selected)
  266.   @Draw_text_in_box("RADIO BUTTONS",433,40/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  267. Return
  268. Procedure Toggle_1(Selected)
  269.   @Draw_text_in_box("Toggle 1",28,36/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  270. Return
  271. Procedure Toggle_2(Selected)
  272.   @Draw_text_in_box("Toggle 2",28,64/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  273. Return
  274. Procedure Exit_1(Selected)
  275.   @Draw_text_in_box("Exit 1",34,100/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  276. Return
  277. Procedure Exit_2(Selected)
  278.   @Draw_text_in_box("Exit 2",34,127/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  279. Return
  280. Procedure Okay(Selected)
  281.   @Draw_text_in_box("Okay",258,42/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),4/(2/Xbios(4)),Selected)
  282. Return
  283. Procedure Cancel(Selected)
  284.   @Draw_text_in_box("Cancel",249,82/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),1/(2/Xbios(4)),Selected)
  285. Return
  286. Procedure Toggle_title(Selected)
  287.   @Draw_text_in_box("⇦ TOGGLE",109,52/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),0/(2/Xbios(4)),Selected)
  288. Return
  289. Procedure exit_title(Selected)
  290.   @Draw_text_in_box("⇦ EXIT",109,116/(2/xbios(4)),0,1,1,2,0/(2/Xbios(4)),0/(2/Xbios(4)),Selected)
  291. Return
  292. Procedure Find_button_Example_box (X_mouse,Y_mouse,Button_selected)
  293.   If (X_mouse>369) And (X_mouse<447) And (Y_mouse>57/(2/Xbios(4))) And (Y_mouse<75/(2/Xbios(4)))
  294.     *Button_selected="Radio_a_1"
  295.     Goto Found_button_Example_box
  296.   Endif
  297.   If (X_mouse>369) And (X_mouse<447) And (Y_mouse>84/(2/Xbios(4))) And (Y_mouse<102/(2/Xbios(4)))
  298.     *Button_selected="Radio_a_2"
  299.     Goto Found_button_Example_box
  300.   Endif
  301.   If (X_mouse>369) And (X_mouse<447) And (Y_mouse>111/(2/Xbios(4))) And (Y_mouse<129/(2/Xbios(4)))
  302.     *Button_selected="Radio_a_3"
  303.     Goto Found_button_Example_box
  304.   Endif
  305.   If (X_mouse>369) And (X_mouse<447) And (Y_mouse>138/(2/Xbios(4))) And (Y_mouse<156/(2/Xbios(4)))
  306.     *Button_selected="Radio_a_4"
  307.     Goto Found_button_Example_box
  308.   Endif
  309.   If (X_mouse>512) And (X_mouse<590) And (Y_mouse>57/(2/Xbios(4))) And (Y_mouse<75/(2/Xbios(4)))
  310.     *Button_selected="Radio_b_1"
  311.     Goto Found_button_Example_box
  312.   Endif
  313.   If (X_mouse>512) And (X_mouse<590) And (Y_mouse>84/(2/Xbios(4))) And (Y_mouse<102/(2/Xbios(4)))
  314.     *Button_selected="Radio_b_2"
  315.     Goto Found_button_Example_box
  316.   Endif
  317.   If (X_mouse>512) And (X_mouse<590) And (Y_mouse>111/(2/Xbios(4))) And (Y_mouse<129/(2/Xbios(4)))
  318.     *Button_selected="Radio_b_3"
  319.     Goto Found_button_Example_box
  320.   Endif
  321.   If (X_mouse>25) And (X_mouse<95) And (Y_mouse>22/(2/Xbios(4))) And (Y_mouse<40/(2/Xbios(4)))
  322.     *Button_selected="Toggle_1"
  323.     Goto Found_button_Example_box
  324.   Endif
  325.   If (X_mouse>25) And (X_mouse<95) And (Y_mouse>50/(2/Xbios(4))) And (Y_mouse<68/(2/Xbios(4)))
  326.     *Button_selected="Toggle_2"
  327.     Goto Found_button_Example_box
  328.   Endif
  329.   If (X_mouse>31) And (X_mouse<85) And (Y_mouse>86/(2/Xbios(4))) And (Y_mouse<104/(2/Xbios(4)))
  330.     *Button_selected="Exit_1"
  331.     Goto Found_button_Example_box
  332.   Endif
  333.   If (X_mouse>31) And (X_mouse<85) And (Y_mouse>113/(2/Xbios(4))) And (Y_mouse<131/(2/Xbios(4)))
  334.     *Button_selected="Exit_2"
  335.     Goto Found_button_Example_box
  336.   Endif
  337.   If (X_mouse>252) And (X_mouse<296) And (Y_mouse>25/(2/Xbios(4))) And (Y_mouse<49/(2/Xbios(4)))
  338.     *Button_selected="Okay"
  339.     Goto Found_button_Example_box
  340.   Endif
  341.   If (X_mouse>246) And (X_mouse<300) And (Y_mouse>68/(2/Xbios(4))) And (Y_mouse<86/(2/Xbios(4)))
  342.     *Button_selected="Cancel"
  343.     Goto Found_button_Example_box
  344.   Endif
  345.   *Button_selected=" "
  346.   Found_button_Example_box:
  347. Return
  348.